package jnpf.service;


import jnpf.base.Pagination;
import jnpf.exception.WxErrorException;
import jnpf.model.mpuser.MpUserModel;

import java.util.List;

/**
 * 公众号用户
 *
 * @author 南通渡课开发平台组
 * @version V3.1.0
 * @copyright 南通渡课信息技术有限公司
 * @date 2019年9月27日 上午9:18
 */
public interface MpUserService {

    /**
     * 列表
     *
     * @param pagination
     * @return
     */
    List<MpUserModel> getList(Pagination pagination) throws WxErrorException;

    /**
     * 列表
     *
     * @return
     */
    List<MpUserModel> getList() throws WxErrorException;

    /**
     * 获取标签下粉丝列表
     *
     * @param pagination
     * @param tagId     标签id
     * @return
     */
    List<MpUserModel> getListByTagId(Pagination pagination, String tagId) throws WxErrorException;

    /**
     * 黑名单列表
     *
     * @param pagination
     * @return
     */
    List<MpUserModel> getBlackList(Pagination pagination) throws WxErrorException;

    /**
     * 用户信息
     *
     * @param openId
     * @return
     */
    MpUserModel userInfo(String openId) throws WxErrorException;

    /**
     * 修改关注者备注信息
     *
     * @param userModel
     */
    boolean updateRemark(MpUserModel userModel) throws WxErrorException;

    /**
     * 加入黑名单
     *
     * @param openId
     */
    boolean addBatchBlack(String openId) throws WxErrorException;

    /**
     * 移除黑名单
     *
     * @param openId
     */
    boolean deleteBatchUnBlack(String openId) throws WxErrorException;
}
